package com.naiterui.ehp.bs.doctor.service;

import com.naiterui.common.repository.page.PageParamVO;
import com.naiterui.common.repository.page.PageVO;
import com.naiterui.ehp.bp.bo.consult.ComplaintBO;
import com.naiterui.ehp.bp.bo.consult.ComplaintDetailBO;
import com.naiterui.ehp.bp.support.exception.BusinessException;

/**
 * @Description 会话投诉
 * @Author gongbaoqiang
 * @Date 2020/7/1 4:12 PM
 */
public interface IConsultComplaintService {

    /**
     * 获取会话投诉列表
     * @param doctorId
     * @param pageParamVO
     * @return
     * @throws BusinessException
     */
    PageVO<ComplaintDetailBO> findByDoctorId(Long doctorId, PageParamVO pageParamVO) throws BusinessException;

    /**
     * 提交会话投诉
     * @param complaintBO
     * @throws BusinessException
     */
    void submit(ComplaintBO complaintBO) throws BusinessException;

    /**
     * 判断会话是否已做过评价
     * @return
     * @throws BusinessException
     */
    Boolean existByConsultSession(Long consultSessionId, Integer consultType) throws BusinessException;

    /**
     * 获取投诉详情
     *
     * @param consultSessionId
     * @param consultType
     * @return
     */
    ComplaintDetailBO getConsultSessionComplaint(Long consultSessionId, Integer consultType);
}
